package cn.tedu.hospitalgroupproject.server.content.dao.persist.repository;

import cn.tedu.hospitalgroupproject.server.common.pojo.vo.PageData;
import cn.tedu.hospitalgroupproject.server.content.pojo.entity.Appointment;
import cn.tedu.hospitalgroupproject.server.content.pojo.vo.AppointmentListVO;
import cn.tedu.hospitalgroupproject.server.content.pojo.vo.ClinicListVO;

import java.time.LocalDateTime;

public interface IAppointmentRepository {
    /*插入预约挂号数据*/
    int insert(Appointment appointment);
    /**
     * 根据预约时间查询预约单列表
     *
     * @param pageNum  页码
     * @param pageSize 每条记录数
     * @return 预约单列表的分页数据
     */
    PageData<AppointmentListVO> listByCreateTime(Integer pageNum, Integer pageSize, String createTime);
    /**
     * 根据预约来访时间查询预约单列表
     *
     * @return 预约单列表的分页数据
     */
    PageData<AppointmentListVO> listByVisitTime(Integer pageNum, Integer pageSize, String visitTime);

    /**
     * 根据医生姓名查询预约单列表
     *
     * @return 预约单列表的分页数据
     */
    PageData<AppointmentListVO> listByDoctorName(Integer pageNum, Integer pageSize, String doctorName);

    /**
     * 查询预约单列表
     *
     * @param pageNum  页码
     * @param pageSize 每条记录数
     * @return 预约单列表的分页数据
     */
    PageData<AppointmentListVO> list(Integer pageNum, Integer pageSize);

}
